RoArm-M2-S Python HTTP请求通信

Python HTTP请求通信

本章节主要介绍了如何运行Python程序通过HTTP请求与机械臂进行通信。

HTTP(Hypertext Transfer Protocol)是一种用于在Web上进行数据通信的协议,它是属于应用层的面向对象的协议。主要是基于WIFI模块实现的无线通信,请求-响应模型灵活且简单。

在运行Python例程前,您需要先在您的系统上安装好Python,且部署好Python的虚拟环境及安装好所有例程需要用到的安装包,具体教程可以见RoArm-M2-S_Python串口通信控制中的步骤。


在 RoArm-M2-S Python 例程中可以看见其中有四个 Python 程序,HTTP请求通信用到的 Python 例程为 http_simple_ctrl.py。例程如下:

import requests
import argparse


def main():
    parser = argparse.ArgumentParser(description='Http JSON Communication')
    parser.add_argument('ip', type=str, help='IP address: 192.168.10.104')

    args = parser.parse_args()

    ip_addr = args.ip

    try:
        while True:
            command = input("input your json cmd: ")
            url = "http://" + ip_addr + "/js?json=" + command
            response = requests.get(url)
            content = response.text
            print(content)
    except KeyboardInterrupt:
        pass


if __name__ == "__main__":
    main()

在运行程序前您需要确认机械臂的ip地址。确认机械臂ip地址跟机械臂所处的WIFI模式息息相关,具体可以参考教程RoArm-M2-S_WIFI配置

  • 如果机械臂 WIFI 模式仅处于 AP 模式,则 IP 地址为192.168.4.1;
  • 如果机械臂 WIFI 模式处于 STA 模式,则可以在机械臂的OLED屏幕上获得该机械臂的 IP 地址。

使用以下命令来运行HTTP请求通信程序。命令中的 IP 地址要更改为您机械臂的 IP 地址。

python http_simple_ctrl.py 192.168.4.1

注意:无论是哪一种模式下,机械臂需要与该脚本运行的设备处于同一个局域网内。


运行完成后,可以看见返回的信息,接着可以输入JSON格式的指令,也可以获取机械臂的反馈信息,从而与机械臂进行通信。

更多 JSON 格式指令的含义参考教程 RoArm-M2-S_JSON指令含义


例程


TAG: 树莓派7寸QLED量子点电容触摸显示屏1024x600 PC电脑游戏副屏 树莓派5 PoE供电 树莓派UGV Rover ROS2 四驱六轮 开源AI云台机器人小车OpenCV 斑梨 ESP32-S3开发板2.8寸LCD显示屏480x640触摸屏 QMI8658传感器 SD槽 Jetson 5G 数据手册 Milk-V Duo S 512MB SG2000 RISC-V开发板 RISC-V与ARM切换 树莓派5 DSI显示屏 树莓派RP2040 HM01B0 树莓派Pico 2 RP2350 1.69寸LCD开发板显示触摸屏板载QMI8658 6轴 谷歌恐龙小游戏 工业级隔离型USB转8路RS485转换器支持35mm标准导轨/堆叠安装 ESP32-P4智能86盒子TV开发板4寸显示触摸屏RS485继电器摄像头网口 ESP32 S3 4.3寸斑梨教程资料程序代码PDF手册 播放大功率宽电压 继电器模块 ESP32 S3 I2C 树莓派5 PCIe转SATA扩板载双通道Pi5 EEPROM支持HAT+ 树莓派10.1寸LCD显示屏HDMI触摸1920x1200迷你PC电脑副屏